yarn run v1.22.22 $ /home/runner/work/element-web/element-web/element-web/node_modules/.bin/ts-node ./scripts/gen-workflow-mermaid.ts ../element-desktop ../element-web ../matrix-js-sdk
--- title: At 09:00 AM & element-desktop Release & Manual --- flowchart LR subgraph ID0["Build and Deploy"] ID1-- needs -->ID2 ID1-- needs -->ID3 ID1-- needs -->ID4 ID1-- needs -->ID5 ID3-- needs -->ID5 ID4-- needs -->ID5 ID2-- needs -->ID5 ID5-- needs -->ID6 ID1[["prepare"]] click ID1 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" subgraph ID2["Windows "] ID7[["Windows ia32"]] click ID7 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" ID8[["Windows x64"]] click ID8 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" end ID3[["macOS"]] click ID3 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" subgraph ID4["Linux )"] ID9[["Linux amd64 (sqlcipher static)"]] click ID9 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" IDa[["Linux arm64 (sqlcipher static)"]] click IDa href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" end ID5[["${{ needs.prepare.outputs.deploy == 'true' && 'Deploy' || 'Deploy (dry-run)' }}"]] click ID5 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" ID6[["Deploy builds to ESS"]] click ID6 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_deploy.yaml" "Click to open workflow" end IDb(("At 09:00 AM")) IDc(("element-desktop Release")) IDd(("Manual")) IDb --> ID0 IDc --> ID0 IDd --> ID0
--- title: Pull Request element-desktop & Push element-desktop develop & Push element-desktop master & Push element-desktop staging & Manual --- flowchart LR subgraph ID0["Build and Test"] ID1-- needs -->ID2 ID1-- needs -->ID3 ID1-- needs -->ID4 ID4-- needs -->ID5 ID3-- needs -->ID5 ID2-- needs -->ID5 ID1[["fetch"]] click ID1 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" subgraph ID2["Windows"] ID6[["Windows (x64)"]] click ID6 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" ID7[["Windows (ia32)"]] click ID7 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" end subgraph ID3["Linux "] ID8[["Linux (amd64) (sqlcipher: system)"]] click ID8 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" ID9[["Linux (arm64) (sqlcipher: system)"]] click ID9 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDa[["Linux (amd64) (sqlcipher: static)"]] click IDa href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDb[["Linux (arm64) (sqlcipher: static)"]] click IDb href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" end ID4[["macOS"]] click ID4 href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" subgraph ID5["Test "] IDc[["Test macOS Universal"]] click IDc href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDd[["Test Linux (amd64) (sqlcipher: system)"]] click IDd href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDe[["Test Linux (amd64) (sqlcipher: static)"]] click IDe href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDf[["Test Linux (arm64) (sqlcipher: system)"]] click IDf href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDg[["Test Linux (arm64) (sqlcipher: static)"]] click IDg href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDh[["Test Windows (x86)"]] click IDh href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" IDi[["Test Windows (x64)"]] click IDi href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/build_and_test.yaml" "Click to open workflow" end end IDj(("Pull Request<br>element-desktop")) IDk(("Push element-desktop<br>develop")) subgraph IDl["Dockerbuild"] IDm[["Docker Build"]] click IDm href "https://github.com/vector-im/element-desktop/blob/develop/.github/workflows/dockerbuild.yaml" "Click to open workflow" end IDn(("Push element-desktop<br>master")) IDo(("Push element-desktop<br>staging")) IDp(("Manual")) IDj --> ID0 IDk --> ID0 IDo --> ID0 IDn --> ID0 IDk --> IDl IDn --> IDl IDo --> IDl IDp --> IDl
--- title: At 06:00 AM only on Monday Wednesday and Friday & Manual --- flowchart LR subgraph ID0["Localazy Download"] ID1[["download"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/localazy_download.yaml" "Click to open workflow" end ID2(("At 06:00 AM<br>only on Monday<br>Wednesday<br>and Friday")) ID3(("Manual")) ID2 --> ID0 ID3 --> ID0
--- title: Push element-web develop & Pull Request element-web & Push element-web master & Manual --- flowchart LR subgraph ID0["Localazy Upload"] ID1[["upload"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/localazy_upload.yaml" "Click to open workflow" end ID2(("Push element-web<br>develop")) subgraph ID3["Build"] subgraph ID4["Build on "] ID5[["Build on ubuntu-24.04"]] click ID5 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/build.yml" "Click to open workflow" ID6[["Build on windows-2022"]] click ID6 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/build.yml" "Click to open workflow" ID7[["Build on macos-14"]] click ID7 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/build.yml" "Click to open workflow" end end ID8(("Pull Request<br>element-web")) subgraph ID9["End to End Tests"] IDa-- needs -->IDb IDb-- needs -->IDc IDa[["Build Element-Web"]] click IDa href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" subgraph IDb["Run Tests "] IDd[["Run Tests 1/${{ strategy.job-total }}"]] click IDd href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" IDe[["Run Tests 2/${{ strategy.job-total }}"]] click IDe href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" IDf[["Run Tests 3/${{ strategy.job-total }}"]] click IDf href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" IDg[["Run Tests 4/${{ strategy.job-total }}"]] click IDg href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" IDh[["Run Tests 5/${{ strategy.job-total }}"]] click IDh href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" IDi[["Run Tests 6/${{ strategy.job-total }}"]] click IDi href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" end IDc[["end-to-end-tests"]] click IDc href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests.yaml" "Click to open workflow" end subgraph IDj["Upload End to End Test report to Netlify"] IDk[["Report results"]] click IDk href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/end-to-end-tests-netlify.yaml" "Click to open workflow" end IDl(("Push element-web<br>master")) subgraph IDm["Upload Preview Build to Netlify"] IDn[["deploy"]] click IDn href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/netlify.yaml" "Click to open workflow" end subgraph IDo["Pull Request Base Branch"] IDp[["Check PR base branch"]] click IDp href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/pull_request_base_branch.yaml" "Click to open workflow" end subgraph IDq["Build and Deploy develop"] IDr[["Build & Deploy develop.element.io"]] click IDr href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/build_develop.yml" "Click to open workflow" end subgraph IDs["Deploy documentation"] IDt-- needs -->IDu IDt[["GitHub Pages"]] click IDt href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/docs.yml" "Click to open workflow" IDu[["deploy"]] click IDu href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/docs.yml" "Click to open workflow" end IDv(("Manual")) ID2 --> ID0 ID2 --> ID3 ID2 --> IDq ID2 --> IDs ID2 --> ID9 ID8 --> ID3 IDl --> ID3 ID8 --> ID9 ID8 --> IDo ID9-- workflow_run -->IDj IDl --> ID9 ID9-- workflow_run -->IDm IDv --> IDs
--- title: Push matrix-js-sdk staging & Manual --- flowchart LR subgraph ID0["Release Drafter"] ID1[["draft"]] click ID1 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/release-drafter.yml" "Click to open workflow" end ID2(("Push matrix-js-sdk<br>staging")) ID3(("Manual")) ID2 --> ID0 ID3 --> ID0
--- title: Push matrix-js-sdk master & Pull Request matrix-js-sdk & Push matrix-js-sdk develop & At 01:00 AM & Manual --- flowchart LR subgraph ID0["Merge master -> develop"] ID1[["merge"]] click ID1 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/release-gitflow.yml" "Click to open workflow" end ID2(("Push matrix-js-sdk<br>master")) subgraph ID3["Static Analysis"] ID4-- needs -->ID5 ID6[["Typescript Syntax Check"]] click ID6 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" ID7[["ESLint"]] click ID7 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" ID8[["Workflow Lint"]] click ID8 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" ID9[["JSDoc Checker"]] click ID9 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" IDa[["Analyse Dead Code"]] click IDa href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" ID4[["Downstream tsc element-web"]] click ID4 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" ID5[["Downstream Typescript Syntax Check"]] click ID5 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/static_analysis.yml" "Click to open workflow" end IDb(("Pull Request<br>matrix-js-sdk")) subgraph IDc["Tests"] IDd-- needs -->IDe IDf-- needs -->IDg IDh-- needs -->IDi subgraph IDd["Jest [)"] IDj[["Jest [integ] (Node ${{ matrix.node == '*' && 'latest' || matrix.node }})"]] click IDj href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDk[["Jest [integ] (Node ${{ matrix.node == '*' && 'latest' || matrix.node }})"]] click IDk href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDl[["Jest [unit] (Node ${{ matrix.node == '*' && 'latest' || matrix.node }})"]] click IDl href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDm[["Jest [unit] (Node ${{ matrix.node == '*' && 'latest' || matrix.node }})"]] click IDm href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" end IDe[["Jest tests"]] click IDe href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDh[["Downstream test element-web"]] click IDh href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDf[["Run Complement Crypto tests"]] click IDf href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDg[["Downstream Complement Crypto tests"]] click IDg href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" IDi[["Downstream tests"]] click IDi href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/tests.yml" "Click to open workflow" end subgraph IDn["SonarQube"] IDo[["🩻 SonarQube"]] click IDo href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/sonarqube.yml" "Click to open workflow" end IDp(("Push matrix-js-sdk<br>develop")) subgraph IDq["Sync labels"] IDr[["sync-labels"]] click IDr href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/sync-labels.yml" "Click to open workflow" end IDs(("At 01:00 AM")) subgraph IDt["Notify Downstream Projects"] subgraph IDu["notify-downstream"] IDv[["notify-downstream (element-hq/element-web, element-web-notify)"]] click IDv href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/notify-downstream.yaml" "Click to open workflow" end end subgraph IDw["matrix-react-sdk End to End Tests"] IDx[["Playwright"]] click IDx href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/downstream-end-to-end-tests.yml" "Click to open workflow" end subgraph IDy["Deploy documentation PR preview"] IDz[["netlify"]] click IDz href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/docs-pr-netlify.yaml" "Click to open workflow" end ID10(("Manual")) ID2 --> ID0 ID2 --> ID3 ID2 --> IDc IDb --> ID3 IDp --> ID3 ID3-- workflow_run -->IDy IDb --> IDc IDb --> IDw IDc-- workflow_run -->IDn IDp --> IDc IDp --> IDq IDp --> IDt IDs --> IDq ID10 --> IDq
--- title: Manual --- flowchart LR subgraph ID0["Release Process"] ID1-- needs -->ID2 ID2-- needs -->ID3 ID1[["release"]] click ID1 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/release.yml" "Click to open workflow" ID2[["Publish Documentation"]] click ID2 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/release.yml" "Click to open workflow" ID3[["docs-deploy"]] click ID3 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/release.yml" "Click to open workflow" end ID4(("Manual")) ID4 --> ID0
--- title: matrix-js-sdk Issues --- flowchart LR subgraph ID0["Move new issues into Issue triage board"] ID1[["automate-project-columns-next"]] click ID1 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/triage-incoming.yml" "Click to open workflow" end ID2(("matrix-js-sdk Issues")) subgraph ID3["Move labelled issues to correct projects"] ID4[["call-triage-labelled"]] click ID4 href "https://github.com/matrix-org/matrix-js-sdk/blob/develop/.github/workflows/triage-labelled.yml" "Click to open workflow" end ID2 --> ID0 ID2 --> ID3
--- title: element-web Release --- flowchart LR subgraph ID0["Build Debian package"] ID1[["Build package"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/build_debian.yaml" "Click to open workflow" end ID2(("element-web Release")) ID2 --> ID0
--- title: Push element-web tag v* & At 0 minutes past the hour every 12 hours starting at 07:00 AM & Manual --- flowchart LR subgraph ID0["Dockerhub"] ID1[["Docker Buildx"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/dockerhub.yaml" "Click to open workflow" end ID2(("Push element-web<br>tag v*")) ID3(("At 0 minutes past the hour<br>every 12 hours<br>starting at 07:00 AM")) ID4(("Manual")) ID2 --> ID0 ID3 --> ID0 ID4 --> ID0
--- title: element-web Issues --- flowchart LR subgraph ID0["issue_closed.yml"] ID1[["Tidy closed issues"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/issue_closed.yml" "Click to open workflow" end ID2(("element-web Issues")) subgraph ID3["Move issued assigned to specific team members to their boards"] ID4[["web-app-team"]] click ID4 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/triage-assigned.yml" "Click to open workflow" end subgraph ID5["Move unlabelled from needs info columns to triaged"] ID6[["Move no longer X-Needs-Info issues to Triaged"]] click ID6 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/triage-unlabelled.yml" "Click to open workflow" ID7[["Remove Z-Labs label when features behind labs flags are removed"]] click ID7 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/triage-unlabelled.yml" "Click to open workflow" end ID2 --> ID0 ID2 --> ID3 ID2 --> ID5
--- title: Manual --- flowchart LR subgraph ID0["Pending reviews automation"] ID1[["Pending reviews bot"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/pending-reviews.yaml" "Click to open workflow" end ID2(("Manual")) ID2 --> ID0
--- title: At 06:00 AM & Manual --- flowchart LR subgraph ID0["Update Playwright docker images"] ID1[["update"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/playwright-image-updates.yaml" "Click to open workflow" end ID2(("At 06:00 AM")) ID3(("Manual")) ID2 --> ID0 ID3 --> ID0
--- title: Manual --- flowchart LR subgraph ID0["Cut branches"] ID1[["prepare"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/release_prepare.yml" "Click to open workflow" end ID2(("Manual")) ID2 --> ID0
--- title: At 01:30 AM --- flowchart LR subgraph ID0["Close stale flaky issues"] ID1[["close"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/triage-stale-flaky-tests.yml" "Click to open workflow" end ID2(("At 01:30 AM")) ID2 --> ID0
--- title: At 03:00 AM only on Sunday & Manual --- flowchart LR subgraph ID0["Update Jitsi"] ID1[["update"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/update-jitsi.yml" "Click to open workflow" end ID2(("At 03:00 AM<br>only on Sunday")) ID3(("Manual")) ID2 --> ID0 ID3 --> ID0
--- title: Manual --- flowchart LR subgraph ID0["Update release topics"] ID1[["Release topic update"]] click ID1 href "https://github.com/element-hq/element-web/blob/develop/.github/workflows/update-topics.yaml" "Click to open workflow" end ID2(("Manual")) ID2 --> ID0
Done in 6.44s.